1. Field of the Invention
This invention relates to electronic circuitry and, more particularly, to methods and apparatus for providing for electronic circuits an output buffer having programmable slew rate and strength characteristics.
2. History of the Prior Art
Buffer circuits are used at the output of electronic circuits to produce two-valued output signals for transfer to other electronic circuits. The two values are usually provided by using transistor devices to switch voltage levels from two different sources to the output terminals. Two characteristics of buffer circuits are slew rate (sometimes called edge rate) and buffer drive strength. The slew rate of a buffer is the rate of change of a voltage signal furnished at the output terminal of the buffer with respect to time. The buffer drive strength is the current/voltage characteristic of an output device of the buffer in producing the particular voltage level of an output signal. An output device of a weak buffer will transfer little current for a particular unbalanced output load in comparison to the current transferred by a strong buffer to the same load.
The drive strength of the buffer and the slew rate are chosen to meet the characteristics of the circuitry with which the buffer is associated. If, for example, the output signal is furnished to an output load having one impedance level, then the buffer strength and slew rate may be chosen to fit those characteristics. If the output signal is furnished to an output load having a different impedance level, then the buffer strength and slew rate may be chosen to fit those different characteristics. If the buffer strength is not suited to the load impedance, then the circuit timing may be affected to the detriment of operations, the system may operate too slowly, or the circuit may consume too much power. If the slew rate is not suited to the load impedance, circuit timing may be affected; and, in certain circumstances, certain frequency components of the output signal may reflect along the signal paths causing signal ringing along the circuit traces.
Although manufacturers generally chose buffer drive strength and slew rate values adapted to best match expected output loads, users often change the loads significantly from the design values rendering the drive strengths and slew rates inappropriate. For example, a user may easily change the amount of dynamic random access memory in main memory of a computer system thereby varying the output load of circuits furnishing signals to memory.
It is desirable to provide output buffer circuitry adapted to match the characteristics of whatever output load a user may provide even though that load has been varied from designed values.